A configuration of a conventional packet communication system will be described. The configuration of the packet communication system is shown in FIG. 1. As shown in FIG. 1, the conventional packet system comprises a router R, a home agent HR, an access router AR, a Mobile Host MH, and a Correspondent Host CH and they are connected among them.
The packet communication system is comprised of nodes and links. The nodes are devices for sending and receiving packets according to TCP/IP. The links are communication paths for transmitting packets from a node to another node by wire transmission or wireless transmission. How to determine the numbers of links and nodes and the connection layout thereof is optional, and requirements are only that each node is directly or indirectly connected to all the other nodes by at least one link. This connection layout is called a network, which is depicted as a cloudlike illustration in FIG. 1. The links and nodes are identified by their respective addresses (addresses defined by IPv6) An address is comprised of a Subnet-prefix and a node identifier, wherein the Subnet-prefix identifies a link to which a node is connected and wherein the node identifier identifies a node connected to a link.
Each node is classified under a router, an access router, a home agent, a mobile host, and a correspondent host. The router is a node for forwarding a packet whose destination address is different from its own address, to another appropriate node. The access router is a router for providing a link to which the mobile host can obtain access. The home agent is a router that can forward a packet directed to the mobile host, to a link at which the mobile host is located. The routers, access routers, and home agent regularly exchange information indicating connection relations of links with the routers, access routers, and home agent necessary for routing processing, by a routing protocol such as OSPF (Open Shortest Path First) or BGP (Border Gateway Protocol). The mobile host is a node that implements communications with the correspondent host while moving from link to link. The correspondent host is a node that implements communications with the mobile host.
Each link is classified under a home link and a foreign link. The home link is a link to which the mobile host belongs, and the foreign link is a link except for the home link. When there exist a plurality of mobile hosts, the home and foreign links are defined for every mobile host. The mobile host is assigned a home address by the home link and a c/o (care of) address by the foreign link. The home address is an address used when the mobile host is present at the home link and at the foreign links. The c/o address is an address used when the mobile host is present at the foreign links. This c/o address is a forwarding destination address of a packet directed to the home address.
The operation of the conventional packet communication system will be described. After the mobile host has moved from its home link to a foreign link, it acquires a c/o address used at the foreign link and then sends a packet including a Binding Update option, to the home agent. In the description hereinafter, this packet will be called simply a Binding Update packet. The Binding Update packet includes the home address and the c/o address of the mobile host, and a correspondence between the home address and the c/o address will be called binding. When receiving the Binding Update packet from the mobile host, the home agent stores the binding and sends a packet including a Binding Acknowledgement option as an acknowledgement response to the mobile host. In the description hereinafter, this packet will be called simply a Binding Acknowledgement packet. When receiving the Binding Acknowledgement packet from the home agent, the mobile host recognizes the storage of the binding at the home agent.
When the correspondent host sends a packet directed to the home address of the mobile host, the packet is routed from the correspondent host to the home link by the routers in the network. When the destination of the packet is the home address of the binding, the home agent receives the packet instead of the mobile host, generates a packet a destination of which is the c/o address of the binding, puts the received packet in a payload of the generated packet, and forwards the packet. The method of putting a certain packet into a payload of another packet and forwarding the packet is called tunneling and such a packet is called a tunneling packet. This tunneling packet is routed from the home agent to the mobile host by the routers in the network. The mobile host receives the tunneling packet and takes the packet out of the payload of the tunneling packet, thus finally receiving the packet the destination of which is its own home address.
The mobile host receiving the tunneling packet may send a Binding Update packet to the correspondent host. Receiving the Binding Update packet, the correspondent host stores the binding. When the correspondent host sends a packet whose destination is the home address indicated by the stored binding, it sets the c/o address to the destination of the packet and sends the packet provided with a routing header option in which the home address of the binding is set. When receiving the packet with the routing header option, the mobile host replaces the c/o address of the destination with the home address, thereby receiving the packet the destination of which is the home address, at last.
After that, every time the mobile host moves to another foreign link and acquires a new c/o address, it notifies the home agent and the correspondent host of new binding by a Binding Update packet. Through this operation of the mobile host, the packet sent from the correspondent host is forwarded via the home agent or directly from the correspondent host to the mobile host located at a foreign link.
The foregoing packet communication system of the prior art, however, has the problem that there occurs a packet loss where the mobile host moves quickly between foreign links far off from the home link or the correspondent host. When the mobile host moves to a foreign link far off from the home link or the correspondent host, the number of passing nodes and links during transmission of a packet, i.e., the number of hops increases. Since the increase in the number of hops between the home link or the correspondent host and the foreign link results in increasing a packet transmission delay, the time becomes longer for the transmission of the Binding Update packet from the mobile host to the home agent or the correspondent host.
The quick movement of the mobile host between foreign links results in shortening stay periods at the respective links, because the mobile host stays at each foreign link for a shorter time. If a stay period is shorter than the transmission period, there will occur a phenomenon in which the mobile host has already moved to another foreign link at the time of arrival of the Binding Update packet at the home agent or the correspondent host. In this case, a packet addressed to the mobile host is forwarded to the foreign link where the mobile host stayed before, and the packet is lost without being received by the mobile host. A conceivable example of such quick movement of the mobile host between foreign links is a situation in which cells in a cellular mobile telecommunications system are foreign links.
In association with the foregoing problem, the packet communication system of the prior art further has the problem that when the mobile host moves between foreign links far off from the home link or the correspondent host, the number of hops that one Binding Update packet passes becomes large, so as to consume a lot of resources of links.
The packet communication system of the prior art also has the problem that, while there occurs no packet transmission between the mobile host and the correspondent host for a long time, the mobile host must also send the Binding Update packet to the home agent at every time of its movement between links because of characteristics of an application employed. This increases the load for processing of Binding Update packets and Binding Acknowledgement packets at the home agent and also poses the problem of consuming the resources of links by transmission of Binding Update packets and Binding Acknowledgement packets.
The present invention has been accomplished under the circumstances as described above, and an object of the present invention is to provide mobility agent, mobile host, home agent and packet communication systems capable of preventing the loss of packets addressed to the mobile host, reducing the traffic volume of Binding Update packets, reducing the transmission frequency of Binding Update packets in the case where a long time has passed without transmission of a packet at the mobile host, and transmitting a packet whose destination is a node located in a mobile network, a method of controlling them and a computer program for executing the method.